package org.example.coupon.dao;


import org.apache.ibatis.annotations.Param;
import org.example.coupon.bo.SeckillSkuRelationBo;
import org.example.coupon.entity.SeckillSkuRelationEntity;
import org.example.coupon.to.SkuSeckillTo;
import org.example.coupon.vo.SeckillSkuRelationVo;

import java.time.LocalDate;
import java.util.List;

/**
 * @author xiaojie_cc
 * @version 1.0
 */
public interface SeckillSkuRelationDao{

    int saveSeckillSkuRelation(SeckillSkuRelationBo seckillSkuRelationBo);

    Integer getSeckillSkuCount(@Param("promotionId") Long promotionId, @Param("sessionId") Long sessionId);

    List<SeckillSkuRelationVo> getSkuRelationList(@Param("promotionId") Long promotionId, @Param("sessionId") Long sessionId);

    void update(SeckillSkuRelationEntity seckillSkuRelation);

    void delete(@Param("ids") List<Long> ids);

    List<SkuSeckillTo> regularSeckill(@Param("localDate") LocalDate localDate);

}
